﻿using System;
using System.Collections.Generic;
using System.Xml.Serialization;

namespace DataAccessLayer
{
    [Serializable, XmlType("Enemy")]
    [XmlInclude(typeof(NormalEnemy))]
    [XmlInclude(typeof(MiniBossEnemy))]
    public abstract class Enemy : Aircraft, ICollidable
    {
        [XmlArray("Waypoints"), XmlArrayItem("Waypoint")]
        public List<EditorVector2> Waypoints { get; set; }

        [XmlElement("CollisionRectangle")]
        public EditorRect CollisionRectangle { get; set; }

        protected Enemy()
        {
            Waypoints = new List<EditorVector2>();
            CollisionRectangle = new EditorRect();
        }
    }
}